# npm
npm (opens new window) 是 Node.js 的包管理工具,全称为 Node Package Manager。它既是命令行工具用于管理项目依赖,也是在线仓库 (opens new window)供开发者共享模块。
# 一、常用命令
# 配置管理
npm config
npm config(opens new window) 命令用于更新和编辑用户和全局.npmrc(opens new window) 文件的内容,也可以获取指定项的配置 (opens new window)信息。# 查看当前 registry 配置 npm config get registry # 设置镜像源(推荐中国用户使用) npm config set registry https://registry.npmmirror.com/ # 查看全局安装路径 npm config get prefix
# 依赖管理
npm install
npm install(opens new window) 命令安装一个包及其依赖的任何包。# 安装项目依赖(根据 package.json) npm install # 安装指定包并写入 dependencies npm install <package-name> # 安装指定包并写入 devDependencies npm install -D <package-name> npm install --save-dev <package-name> # 全局安装(需管理员权限) sudo npm install -g <package-name>npm link
在依赖包目录中执行没有参数的
npm link(opens new window),将在全局文件夹中创建一个符号链接。在其他位置,执行
npm link package-name将在当前文件夹下的 node_modules/ 目录下,创建一个符号链接,链接到全局安装的 package-name。# 在包目录创建全局软链接(开发调试常用) cd /your-package npm link # 在其他项目链接该包 cd /your-project npm link your-package
# 二、配置管理
# 配置优先级
npm 按以下顺序加载配置 (opens new window)(后者覆盖前者):
- 内置默认配置:
/path/to/npm/npmrc - 全局配置:
$PREFIX/etc/npmrc - 用户级配置:
~/.npmrc - 项目级配置:
./.npmrc - 环境变量:以
npm_config_开头的变量 - 命令行参数:如
--registry=https://registry.npmmirror.com/
# 关键配置项
| 配置项 | 作用描述 | 典型值示例 |
|---|---|---|
| registry (opens new window) | 包仓库地址 | https://registry.npmmirror.com/ |
| prefix (opens new window) | 全局安装路径 | /usr/local(Unix) |
| save-exact (opens new window) | 安装时锁定精确版本号 | true |
# 配置文件示例
~/.npmrc (opens new window)(用户级配置):
registry=https://registry.npmmirror.com/
prefix=/home/user/.npm-global
engine-strict=true